import { request } from '@/utils/request';
import type {
  BreedingStatsResult,
  serviceItemDetailResult,
  serviceItemListResult,
  serviceItemRequest,
} from './model/serviceItemRequest';

const Api = {
  list: 'serviceItemRequest/list',
  update: 'serviceItemRequest/status',
  detail: 'serviceItemRequest/detail',
  stats: 'serviceItemRequest/statistic', // 繁育统计接口
};

/**
 * 获取服务项目申请列表
 * @param params 查询参数
 * @returns 服务项目申请列表
 */
export function getServiceItemRequestList(params: serviceItemRequest) {
  return request.post<serviceItemListResult>({
    url: Api.list,
    params,
  });
}

/**
 * 获取服务项目申请详情
 * @param id 服务项目申请ID
 * @returns 服务项目申请详情
 */
export function getServiceItemRequestDetail(id: number) {
  return request.get<serviceItemDetailResult>({
    url: Api.detail + '/' + id,
  });
}

/**
 * 更新服务项目申请
 * @param data 服务项目申请数据
 * @returns 服务项目申请详情
 */
export function updateServiceItemRequest(data: serviceItemRequest) {
  return request.put<serviceItemDetailResult>({
    url: Api.update,
    data,
  });
}

/**
 * 获取繁育统计数据
 * @returns 繁育统计数据
 */
export function getBreedingStats() {
  return request.get<BreedingStatsResult>({
    url: Api.stats,
  });
}
